# -*- coding: utf-8 -*-
"""
Created on Mon May 19 15:38:04 2025

@author: 何敏
"""

# -*- coding: utf-8 -*-
"""
Created on Tue Nov 26 13:18:21 2024

@author: 何敏
"""

import pandas as pd
import statsmodels.api as sm
from linearmodels.panel import RandomEffects

# 加载数据
data = pd.read_csv('C:\\Users\何敏\Desktop\data(2).csv')

# 确保数据有正确的索引（省份、年份），必要时调整格式
data = data.set_index(['省份', '年份'])

# 定义解释变量和被解释变量
y = data['区域经济发展']
X_full = data[['智能制造水平', '平均受教育年限', '固定资产投资总额', '一般预算支出比GDP', '三城']]
X_partial = data[['智能制造水平']]  # 仅保留解释变量

# 模型1: 加入控制变量并控制固定效应
model_re_full = RandomEffects(y, sm.add_constant(X_full)).fit()

# 模型2: 仅控制固定效应不加入控制变量
model_re_partial = RandomEffects(y, sm.add_constant(X_partial)).fit()

# 模型3: 不加入控制变量也不控制固定效应
model_re_simple = RandomEffects(y, sm.add_constant(X_partial)).fit()

# 输出结果
print("随机效应模型 - 全模型:")
print(model_re_full.summary)
print("\n随机效应模型 - 仅解释变量:")
print(model_re_partial.summary)
print("\n随机效应模型 - 不控制固定效应:")
print(model_re_simple.summary)